1. Field of the Invention
The present invention relates to an apparatus, a computer program product, and a method for supporting construction of ontologies.
2. Description of the Related Art
An ontology is a description of knowledge or a concept in a systematically classified manner. Each knowledge or each concept is represented as a class which is characterized by the set of properties. The classes of the ontology generally forms a classification hierarchy in which the properties of a direct superclass are inherited by its direct subclasses in an object-oriented manner. Here, the term “direct superclass(es)” indicates a parent class(es) of a class, and the term “superclass(es)” indicates its all ancestor class(es) including its parent class(es). In the same manner, the term “direct subclass(es)” indicates all child classes of a class, and the term “subclass(es)” indicates its all descendant class(es) including its child class(es). Therefore, each class has both properties defined on the class and ones defined on its superclasses.
Each class can have a data set called “content data” each data in which is represented as a set of values of the properties of the class. One of the characteristics of such classification hierarchies is that the content data of a class can be browsed from its all superclasses. In this situation, from a superclass, it is possible to browse only the values of properties of the superclass.
In the object-oriented method, the meaning of a property is restricted by the class that uses the property, in addition to the meaning of the property itself. Another example of an element with which each class is characterized is that the properties belonging to mutually the same class are related to one another explicitly or implicitly. Thus, by designing the classes from an object-oriented aspect, it is possible to construct an effective ontology.
An example of an ontology that is expressed by using a class hierarchy is the Web Ontology Language (OWL), which is a technique recommended by the World Wide Web Consortium (W3C) and is used for systematically expressing vocabulary and/or knowledge in the web and the relationships among the vocabulary words or the knowledge pieces. The OWL expresses an inferable class system of vocabulary, based on the syntax of a Resource Description Framework (RDF).
An example of an ontology is International Organization for Standardization (ISO) 13584/Parts Library (PLIB), which is an International Standard related to electronic catalogues of industrial products and component parts. In PLIB, schemas for describing classes and properties such as “BSU code” and “preferred name” are defined. Meta data of the classes and the properties are written according to the schemas. An ontology that has been structured as described above may be called a “data dictionary”. The content data are written according to the data dictionary.
In industry, some ontologies are made and distributed for e-business. When a number of corporations write data based on a commonly-used ontology, all the users that refer to the ontology are able to share the meanings related to the data. As a result, it is expected that the persons in charge are able to save the time and the energy they spend exchanging information among themselves frequently, so as to understand the meanings of the data. Further, conventionally, it has been necessary to convert data formats and values frequently, during the process of exchanging data among the corporations. However, if the corporations use the classes and the properties in the ontology that is commonly used among themselves, it is possible to save the time and the energy spent on the conversion process. In the explanation below, an ontology that can be referred to and used by a plurality of users like the one described above will be called “a standard ontology”.
Generally speaking, from the aspect of consistency and neutrality, it is difficult to update a standard ontology itself unless all the users or the representatives of the users who are using the standard ontology agree on the update. Also, because each corporation often adds information unique to the corporation to the data that is dealt with in the corporation, it is difficult to fully express the data unique to each corporation by using a neutral standard ontology.
To cope with these situations, a method for constructing an ontology has been suggested in which properties that correspond to the data items in the data are extracted from a standard ontology so that the classes of the data are created by re-using the extracted properties. In this method, by re-using the standard ontology, all the users are able to share the same set of concepts in all the situations where the data is operated, such as when the data is created, when the data is browsed, and when the data is exchanged.
In most cases, the work of constructing a customized ontology (i.e., an ontology unique to the user) by re-using a standard ontology is done manually. However, to construct an ontology having a high level of precision, people need to be conversant with the standard ontology. Thus, one of the problems is that it is difficult for a person who is not one of the experts to construct the ontology. In addition, another problem is that the larger the number of data items that constitute the data is, the more time and energy it takes to select the properties that correspond to the data items.
To solve these problems, for example, in JP-A 2001-14166 (KOKAI), a method has been proposed in which data items are automatically brought into correspondence with an existing ontology, based on levels of similarity among names or the like.
However, according to the method disclosed in JP-A 2001-14166 (KOKAI), because the class hierarchy is not taken into consideration while the data items are brought into correspondence with the existing ontology, a problem remains where the information about the meanings given to the properties by the classes may be missing.